<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>read_dl_classifier [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_legacy.html">过时</a> / <a href="toc_legacy_legdlclassification.html">DL Classification</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">read_dl_classifier</span><span data-if="c" style="display:none;">T_read_dl_classifier</span><span data-if="cpp" style="display:none;">ReadDlClassifier</span><span data-if="dotnet" style="display:none;">ReadDlClassifier</span><span data-if="python" style="display:none;">read_dl_classifier</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">read_dl_classifier</span><span data-if="c" style="display:none;">T_read_dl_classifier</span><span data-if="cpp" style="display:none;">ReadDlClassifier</span><span data-if="dotnet" style="display:none;">ReadDlClassifier</span><span data-if="python" style="display:none;">read_dl_classifier</span></code> — Read a deep-learning-based classifier from a file.</p>
<h2>警告</h2>
<p><b><code><span data-if="hdevelop" style="display:inline">read_dl_classifier</span><span data-if="c" style="display:none">read_dl_classifier</span><span data-if="cpp" style="display:none">ReadDlClassifier</span><span data-if="com" style="display:none">ReadDlClassifier</span><span data-if="dotnet" style="display:none">ReadDlClassifier</span><span data-if="python" style="display:none">read_dl_classifier</span></code> is obsolete and is only provided for
reasons of backward compatibility. New applications should use the
common CNN-based operator <a href="read_dl_model.html"><code><span data-if="hdevelop" style="display:inline">read_dl_model</span><span data-if="c" style="display:none">read_dl_model</span><span data-if="cpp" style="display:none">ReadDlModel</span><span data-if="com" style="display:none">ReadDlModel</span><span data-if="dotnet" style="display:none">ReadDlModel</span><span data-if="python" style="display:none">read_dl_model</span></code></a>.</b></p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>read_dl_classifier</b>( :  : <a href="#FileName"><i>FileName</i></a> : <a href="#DLClassifierHandle"><i>DLClassifierHandle</i></a>)</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>T_read_dl_classifier</b>(const Htuple <a href="#FileName"><i>FileName</i></a>, Htuple* <a href="#DLClassifierHandle"><i>DLClassifierHandle</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>ReadDlClassifier</b>(const HTuple&amp; <a href="#FileName"><i>FileName</i></a>, HTuple* <a href="#DLClassifierHandle"><i>DLClassifierHandle</i></a>)</code></p>
<p>
<code>void <a href="HDlClassifier.html">HDlClassifier</a>::<b>HDlClassifier</b>(const HString&amp; <a href="#FileName"><i>FileName</i></a>)</code></p>
<p>
<code>void <a href="HDlClassifier.html">HDlClassifier</a>::<b>HDlClassifier</b>(const char* <a href="#FileName"><i>FileName</i></a>)</code></p>
<p>
<code>void <a href="HDlClassifier.html">HDlClassifier</a>::<b>HDlClassifier</b>(const wchar_t* <a href="#FileName"><i>FileName</i></a>)  <span class="signnote">
            (
            Windows only)
          </span></code></p>
<p>
<code>void <a href="HDlClassifier.html">HDlClassifier</a>::<b>ReadDlClassifier</b>(const HString&amp; <a href="#FileName"><i>FileName</i></a>)</code></p>
<p>
<code>void <a href="HDlClassifier.html">HDlClassifier</a>::<b>ReadDlClassifier</b>(const char* <a href="#FileName"><i>FileName</i></a>)</code></p>
<p>
<code>void <a href="HDlClassifier.html">HDlClassifier</a>::<b>ReadDlClassifier</b>(const wchar_t* <a href="#FileName"><i>FileName</i></a>)  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>ReadDlClassifier</b>(<a href="HTuple.html">HTuple</a> <a href="#FileName"><i>fileName</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#DLClassifierHandle"><i>DLClassifierHandle</i></a>)</code></p>
<p>
<code>public <a href="HDlClassifier.html">HDlClassifier</a>(string <a href="#FileName"><i>fileName</i></a>)</code></p>
<p>
<code>void <a href="HDlClassifier.html">HDlClassifier</a>.<b>ReadDlClassifier</b>(string <a href="#FileName"><i>fileName</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>read_dl_classifier</b>(<a href="#FileName"><i>file_name</i></a>: str) -&gt; HHandle</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p>该算子 <code><span data-if="hdevelop" style="display:inline">read_dl_classifier</span><span data-if="c" style="display:none">read_dl_classifier</span><span data-if="cpp" style="display:none">ReadDlClassifier</span><span data-if="com" style="display:none">ReadDlClassifier</span><span data-if="dotnet" style="display:none">ReadDlClassifier</span><span data-if="python" style="display:none">read_dl_classifier</span></code> reads a neural network written
by <a href="write_dl_classifier.html"><code><span data-if="hdevelop" style="display:inline">write_dl_classifier</span><span data-if="c" style="display:none">write_dl_classifier</span><span data-if="cpp" style="display:none">WriteDlClassifier</span><span data-if="com" style="display:none">WriteDlClassifier</span><span data-if="dotnet" style="display:none">WriteDlClassifier</span><span data-if="python" style="display:none">write_dl_classifier</span></code></a>.
As a result, the handle <a href="#DLClassifierHandle"><i><code><span data-if="hdevelop" style="display:inline">DLClassifierHandle</span><span data-if="c" style="display:none">DLClassifierHandle</span><span data-if="cpp" style="display:none">DLClassifierHandle</span><span data-if="com" style="display:none">DLClassifierHandle</span><span data-if="dotnet" style="display:none">DLClassifierHandle</span><span data-if="python" style="display:none">dlclassifier_handle</span></code></i></a> is returned.
</p>
<p>HALCON provides pretrained neural networks.
These neural networks are good starting points to train a custom
classifier for image classification. They have been pretrained on a large
image dataset. The provided pretrained neural networks are:
</p>
<dl class="generic">

<dt><b><i><span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_compact.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_compact.hdl"</span></i>:</b></dt>
<dd>
<p>

This neural network is designed to be memory and runtime efficient.
</p>
<p>This classifier expects the images to be of the type <code>real</code>.
Additionally, the network is designed for certain image properties.
The corresponding values can be retrieved with
<a href="get_dl_classifier_param.html"><code><span data-if="hdevelop" style="display:inline">get_dl_classifier_param</span><span data-if="c" style="display:none">get_dl_classifier_param</span><span data-if="cpp" style="display:none">GetDlClassifierParam</span><span data-if="com" style="display:none">GetDlClassifierParam</span><span data-if="dotnet" style="display:none">GetDlClassifierParam</span><span data-if="python" style="display:none">get_dl_classifier_param</span></code></a>. Here we list the default values with
which the classifier has been trained:
</p>
<dl class="generic">


<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_width'</span><span data-if="c" style="display:none">"image_width"</span><span data-if="cpp" style="display:none">"image_width"</span><span data-if="com" style="display:none">"image_width"</span><span data-if="dotnet" style="display:none">"image_width"</span><span data-if="python" style="display:none">"image_width"</span></i>: 224
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_height'</span><span data-if="c" style="display:none">"image_height"</span><span data-if="cpp" style="display:none">"image_height"</span><span data-if="com" style="display:none">"image_height"</span><span data-if="dotnet" style="display:none">"image_height"</span><span data-if="python" style="display:none">"image_height"</span></i>: 224
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_num_channels'</span><span data-if="c" style="display:none">"image_num_channels"</span><span data-if="cpp" style="display:none">"image_num_channels"</span><span data-if="com" style="display:none">"image_num_channels"</span><span data-if="dotnet" style="display:none">"image_num_channels"</span><span data-if="python" style="display:none">"image_num_channels"</span></i>: 3
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_range_min'</span><span data-if="c" style="display:none">"image_range_min"</span><span data-if="cpp" style="display:none">"image_range_min"</span><span data-if="com" style="display:none">"image_range_min"</span><span data-if="dotnet" style="display:none">"image_range_min"</span><span data-if="python" style="display:none">"image_range_min"</span></i>: -127.0
</p></dd>

<dt><b></b></dt>
<dd>
<p>
 <i><span data-if="hdevelop" style="display:inline">'image_range_max'</span><span data-if="c" style="display:none">"image_range_max"</span><span data-if="cpp" style="display:none">"image_range_max"</span><span data-if="com" style="display:none">"image_range_max"</span><span data-if="dotnet" style="display:none">"image_range_max"</span><span data-if="python" style="display:none">"image_range_max"</span></i>: 128.0
</p>
</dd>
</dl>
<p>
This network does not contain any fully connected layer.
The network architecture allows changes concerning the image dimensions,
but requires a minimum <i><span data-if="hdevelop" style="display:inline">'image_width'</span><span data-if="c" style="display:none">"image_width"</span><span data-if="cpp" style="display:none">"image_width"</span><span data-if="com" style="display:none">"image_width"</span><span data-if="dotnet" style="display:none">"image_width"</span><span data-if="python" style="display:none">"image_width"</span></i> and  <i><span data-if="hdevelop" style="display:inline">'image_height'</span><span data-if="c" style="display:none">"image_height"</span><span data-if="cpp" style="display:none">"image_height"</span><span data-if="com" style="display:none">"image_height"</span><span data-if="dotnet" style="display:none">"image_height"</span><span data-if="python" style="display:none">"image_height"</span></i>
of 15 pixels.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_enhanced.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span></i>:</b></dt>
<dd>
<p>

This neural network has more hidden layers than
<i><span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_compact.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_compact.hdl"</span></i> and is therefore assumed
to be better suited for more complex classification tasks. But this comes
at the cost of being more time and memory demanding.
As a result, e.g., in comparison to the above compact network, the batch
size has to be decreased network during the training, see
<a href="set_dl_classifier_param.html"><code><span data-if="hdevelop" style="display:inline">set_dl_classifier_param</span><span data-if="c" style="display:none">set_dl_classifier_param</span><span data-if="cpp" style="display:none">SetDlClassifierParam</span><span data-if="com" style="display:none">SetDlClassifierParam</span><span data-if="dotnet" style="display:none">SetDlClassifierParam</span><span data-if="python" style="display:none">set_dl_classifier_param</span></code></a>.
</p>
<p>This classifier expects the images to be of the type <code>real</code>.
Additionally, the network is designed for certain image properties.
The corresponding values can be retrieved with
<a href="get_dl_classifier_param.html"><code><span data-if="hdevelop" style="display:inline">get_dl_classifier_param</span><span data-if="c" style="display:none">get_dl_classifier_param</span><span data-if="cpp" style="display:none">GetDlClassifierParam</span><span data-if="com" style="display:none">GetDlClassifierParam</span><span data-if="dotnet" style="display:none">GetDlClassifierParam</span><span data-if="python" style="display:none">get_dl_classifier_param</span></code></a>. Here we list the default values with
which the classifier has been trained:
</p>
<dl class="generic">


<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_width'</span><span data-if="c" style="display:none">"image_width"</span><span data-if="cpp" style="display:none">"image_width"</span><span data-if="com" style="display:none">"image_width"</span><span data-if="dotnet" style="display:none">"image_width"</span><span data-if="python" style="display:none">"image_width"</span></i>: 224
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_height'</span><span data-if="c" style="display:none">"image_height"</span><span data-if="cpp" style="display:none">"image_height"</span><span data-if="com" style="display:none">"image_height"</span><span data-if="dotnet" style="display:none">"image_height"</span><span data-if="python" style="display:none">"image_height"</span></i>: 224
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_num_channels'</span><span data-if="c" style="display:none">"image_num_channels"</span><span data-if="cpp" style="display:none">"image_num_channels"</span><span data-if="com" style="display:none">"image_num_channels"</span><span data-if="dotnet" style="display:none">"image_num_channels"</span><span data-if="python" style="display:none">"image_num_channels"</span></i>: 3
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_range_min'</span><span data-if="c" style="display:none">"image_range_min"</span><span data-if="cpp" style="display:none">"image_range_min"</span><span data-if="com" style="display:none">"image_range_min"</span><span data-if="dotnet" style="display:none">"image_range_min"</span><span data-if="python" style="display:none">"image_range_min"</span></i>: -127.0
</p></dd>

<dt><b></b></dt>
<dd>
<p>
 <i><span data-if="hdevelop" style="display:inline">'image_range_max'</span><span data-if="c" style="display:none">"image_range_max"</span><span data-if="cpp" style="display:none">"image_range_max"</span><span data-if="com" style="display:none">"image_range_max"</span><span data-if="dotnet" style="display:none">"image_range_max"</span><span data-if="python" style="display:none">"image_range_max"</span></i>: 128.0
</p>
</dd>
</dl>
<p>
The network architecture allows changes concerning the image dimensions,
but requires a minimum <i><span data-if="hdevelop" style="display:inline">'image_width'</span><span data-if="c" style="display:none">"image_width"</span><span data-if="cpp" style="display:none">"image_width"</span><span data-if="com" style="display:none">"image_width"</span><span data-if="dotnet" style="display:none">"image_width"</span><span data-if="python" style="display:none">"image_width"</span></i> and <i><span data-if="hdevelop" style="display:inline">'image_height'</span><span data-if="c" style="display:none">"image_height"</span><span data-if="cpp" style="display:none">"image_height"</span><span data-if="com" style="display:none">"image_height"</span><span data-if="dotnet" style="display:none">"image_height"</span><span data-if="python" style="display:none">"image_height"</span></i>
of 47 pixels. There is no maximum image size, but large image sizes will
increase the memory demand and the runtime significantly. Changing the
image size will reinitialize the weights of the fully connected layers
and therefore makes a retraining necessary.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_resnet18.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span></i>:</b></dt>
<dd>
<p>

As the neural network <i><span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_enhanced.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span></i>,
this classifier is suited for more complex tasks.
But its structure differs, bringing the advantage of making the training
more stable and being internally more robust. Compared to the neural
network <i><span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_resnet50.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span></i> it is less
complex and has faster inference times.
</p>
<p>This classifier expects the images to be of the type <code>real</code>.
Additionally, the network is designed for certain image properties.
The corresponding values can be retrieved with
<a href="get_dl_classifier_param.html"><code><span data-if="hdevelop" style="display:inline">get_dl_classifier_param</span><span data-if="c" style="display:none">get_dl_classifier_param</span><span data-if="cpp" style="display:none">GetDlClassifierParam</span><span data-if="com" style="display:none">GetDlClassifierParam</span><span data-if="dotnet" style="display:none">GetDlClassifierParam</span><span data-if="python" style="display:none">get_dl_classifier_param</span></code></a>. Here we list the default values with
which the classifier has been trained:
</p>
<dl class="generic">


<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_width'</span><span data-if="c" style="display:none">"image_width"</span><span data-if="cpp" style="display:none">"image_width"</span><span data-if="com" style="display:none">"image_width"</span><span data-if="dotnet" style="display:none">"image_width"</span><span data-if="python" style="display:none">"image_width"</span></i>: 224
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_height'</span><span data-if="c" style="display:none">"image_height"</span><span data-if="cpp" style="display:none">"image_height"</span><span data-if="com" style="display:none">"image_height"</span><span data-if="dotnet" style="display:none">"image_height"</span><span data-if="python" style="display:none">"image_height"</span></i>: 224
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_num_channels'</span><span data-if="c" style="display:none">"image_num_channels"</span><span data-if="cpp" style="display:none">"image_num_channels"</span><span data-if="com" style="display:none">"image_num_channels"</span><span data-if="dotnet" style="display:none">"image_num_channels"</span><span data-if="python" style="display:none">"image_num_channels"</span></i>: 3
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_range_min'</span><span data-if="c" style="display:none">"image_range_min"</span><span data-if="cpp" style="display:none">"image_range_min"</span><span data-if="com" style="display:none">"image_range_min"</span><span data-if="dotnet" style="display:none">"image_range_min"</span><span data-if="python" style="display:none">"image_range_min"</span></i>: -127.0
</p></dd>

<dt><b></b></dt>
<dd>
<p>
 <i><span data-if="hdevelop" style="display:inline">'image_range_max'</span><span data-if="c" style="display:none">"image_range_max"</span><span data-if="cpp" style="display:none">"image_range_max"</span><span data-if="com" style="display:none">"image_range_max"</span><span data-if="dotnet" style="display:none">"image_range_max"</span><span data-if="python" style="display:none">"image_range_max"</span></i>: 128.0
</p>
</dd>
</dl>
<p>
The network architecture allows changes concerning the image dimensions,
but a minimum <i><span data-if="hdevelop" style="display:inline">'image_width'</span><span data-if="c" style="display:none">"image_width"</span><span data-if="cpp" style="display:none">"image_width"</span><span data-if="com" style="display:none">"image_width"</span><span data-if="dotnet" style="display:none">"image_width"</span><span data-if="python" style="display:none">"image_width"</span></i> and <i><span data-if="hdevelop" style="display:inline">'image_height'</span><span data-if="c" style="display:none">"image_height"</span><span data-if="cpp" style="display:none">"image_height"</span><span data-if="com" style="display:none">"image_height"</span><span data-if="dotnet" style="display:none">"image_height"</span><span data-if="python" style="display:none">"image_height"</span></i>
of 32 pixels is recommended. There is no maximum image size, but large
image sizes will increase the memory demand and the runtime significantly.
Despite the fully connected layer a change of the image size does
not lead to a reinitialization of the weights.
</p>
</dd>

<dt><b><i><span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_resnet50.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span></i>:</b></dt>
<dd>
<p>

As the neural network <i><span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_enhanced.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span></i>,
this classifier is suited for more complex tasks.
But its structure differs, bringing the advantage of making the training
more stable and being internally more robust.
</p>
<p>This classifier expects the images to be of the type <code>real</code>.
Additionally, the network is designed for certain image properties.
The corresponding values can be retrieved with
<a href="get_dl_classifier_param.html"><code><span data-if="hdevelop" style="display:inline">get_dl_classifier_param</span><span data-if="c" style="display:none">get_dl_classifier_param</span><span data-if="cpp" style="display:none">GetDlClassifierParam</span><span data-if="com" style="display:none">GetDlClassifierParam</span><span data-if="dotnet" style="display:none">GetDlClassifierParam</span><span data-if="python" style="display:none">get_dl_classifier_param</span></code></a>. Here we list the default values with
which the classifier has been trained:
</p>
<dl class="generic">


<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_width'</span><span data-if="c" style="display:none">"image_width"</span><span data-if="cpp" style="display:none">"image_width"</span><span data-if="com" style="display:none">"image_width"</span><span data-if="dotnet" style="display:none">"image_width"</span><span data-if="python" style="display:none">"image_width"</span></i>: 224
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_height'</span><span data-if="c" style="display:none">"image_height"</span><span data-if="cpp" style="display:none">"image_height"</span><span data-if="com" style="display:none">"image_height"</span><span data-if="dotnet" style="display:none">"image_height"</span><span data-if="python" style="display:none">"image_height"</span></i>: 224
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_num_channels'</span><span data-if="c" style="display:none">"image_num_channels"</span><span data-if="cpp" style="display:none">"image_num_channels"</span><span data-if="com" style="display:none">"image_num_channels"</span><span data-if="dotnet" style="display:none">"image_num_channels"</span><span data-if="python" style="display:none">"image_num_channels"</span></i>: 3
</p></dd>

<dt><b></b></dt>
<dd><p>
 <i><span data-if="hdevelop" style="display:inline">'image_range_min'</span><span data-if="c" style="display:none">"image_range_min"</span><span data-if="cpp" style="display:none">"image_range_min"</span><span data-if="com" style="display:none">"image_range_min"</span><span data-if="dotnet" style="display:none">"image_range_min"</span><span data-if="python" style="display:none">"image_range_min"</span></i>: -127.0
</p></dd>

<dt><b></b></dt>
<dd>
<p>
 <i><span data-if="hdevelop" style="display:inline">'image_range_max'</span><span data-if="c" style="display:none">"image_range_max"</span><span data-if="cpp" style="display:none">"image_range_max"</span><span data-if="com" style="display:none">"image_range_max"</span><span data-if="dotnet" style="display:none">"image_range_max"</span><span data-if="python" style="display:none">"image_range_max"</span></i>: 128.0
</p>
</dd>
</dl>
<p>
The network architecture allows changes concerning the image dimensions,
but a minimum <i><span data-if="hdevelop" style="display:inline">'image_width'</span><span data-if="c" style="display:none">"image_width"</span><span data-if="cpp" style="display:none">"image_width"</span><span data-if="com" style="display:none">"image_width"</span><span data-if="dotnet" style="display:none">"image_width"</span><span data-if="python" style="display:none">"image_width"</span></i> and <i><span data-if="hdevelop" style="display:inline">'image_height'</span><span data-if="c" style="display:none">"image_height"</span><span data-if="cpp" style="display:none">"image_height"</span><span data-if="com" style="display:none">"image_height"</span><span data-if="dotnet" style="display:none">"image_height"</span><span data-if="python" style="display:none">"image_height"</span></i>
of 32 pixels is recommended. There is no maximum image size, but large
image sizes will increase the memory demand and the runtime significantly.
Despite the fully connected layer a change of the image size does
not lead to a reinitialization of the weights.
</p>
</dd>
</dl>
<p>The values listed above are the default image dimensions and gray value
range for the networks and these are the values with which the classifiers
have been trained.
The network architectures allow different image sizes which can be
set with <a href="set_dl_classifier_param.html"><code><span data-if="hdevelop" style="display:inline">set_dl_classifier_param</span><span data-if="c" style="display:none">set_dl_classifier_param</span><span data-if="cpp" style="display:none">SetDlClassifierParam</span><span data-if="com" style="display:none">SetDlClassifierParam</span><span data-if="dotnet" style="display:none">SetDlClassifierParam</span><span data-if="python" style="display:none">set_dl_classifier_param</span></code></a>. For networks with at least one
fully connected layer such a change makes a retraining necessary.
Networks without fully connected layers are directly applicable to different
image sizes. However, images with a size differing from the size with which
the classifier has been trained are likely to show a reduced classification
accuracy.
</p>
<p>The actually configured dimensions can be queried by
<a href="get_dl_classifier_param.html"><code><span data-if="hdevelop" style="display:inline">get_dl_classifier_param</span><span data-if="c" style="display:none">get_dl_classifier_param</span><span data-if="cpp" style="display:none">GetDlClassifierParam</span><span data-if="com" style="display:none">GetDlClassifierParam</span><span data-if="dotnet" style="display:none">GetDlClassifierParam</span><span data-if="python" style="display:none">get_dl_classifier_param</span></code></a>.
Every image that is fed into a network must be present according to
the required dimensions.
To adjust images accordingly, the procedure
<code>preprocess_dl_classifier_images</code> is available.
</p>
<p>Typically it is easier, faster and better to retrain a pretrained
classifier for a given classification problem. A pretrained classifier has
already learned good general purpose features. To retrain the network for
a custom problem, the new <i><span data-if="hdevelop" style="display:inline">'classes'</span><span data-if="c" style="display:none">"classes"</span><span data-if="cpp" style="display:none">"classes"</span><span data-if="com" style="display:none">"classes"</span><span data-if="dotnet" style="display:none">"classes"</span><span data-if="python" style="display:none">"classes"</span></i> of the classifier have to be
set with <a href="set_dl_classifier_param.html"><code><span data-if="hdevelop" style="display:inline">set_dl_classifier_param</span><span data-if="c" style="display:none">set_dl_classifier_param</span><span data-if="cpp" style="display:none">SetDlClassifierParam</span><span data-if="com" style="display:none">SetDlClassifierParam</span><span data-if="dotnet" style="display:none">SetDlClassifierParam</span><span data-if="python" style="display:none">set_dl_classifier_param</span></code></a>.
</p>
<p>The neural network is loaded from the file <a href="#FileName"><i><code><span data-if="hdevelop" style="display:inline">FileName</span><span data-if="c" style="display:none">FileName</span><span data-if="cpp" style="display:none">FileName</span><span data-if="com" style="display:none">FileName</span><span data-if="dotnet" style="display:none">fileName</span><span data-if="python" style="display:none">file_name</span></code></i></a>.
This file is hereby searched in the directory ($HALCONROOT/dl/) as well
as in the currently used directory.
</p>
<p>Please note that the runtime specific parameter <i><span data-if="hdevelop" style="display:inline">'gpu'</span><span data-if="c" style="display:none">"gpu"</span><span data-if="cpp" style="display:none">"gpu"</span><span data-if="com" style="display:none">"gpu"</span><span data-if="dotnet" style="display:none">"gpu"</span><span data-if="python" style="display:none">"gpu"</span></i> of the
classifier is not read from file. Instead it is initialized with its default
value (see <a href="set_dl_classifier_param.html"><code><span data-if="hdevelop" style="display:inline">set_dl_classifier_param</span><span data-if="c" style="display:none">set_dl_classifier_param</span><span data-if="cpp" style="display:none">SetDlClassifierParam</span><span data-if="com" style="display:none">SetDlClassifierParam</span><span data-if="dotnet" style="display:none">SetDlClassifierParam</span><span data-if="python" style="display:none">set_dl_classifier_param</span></code></a>).
</p>
<p>The default HALCON file extension for deep learning classifiers is
<i><span data-if="hdevelop" style="display:inline">'.hdl'</span><span data-if="c" style="display:none">".hdl"</span><span data-if="cpp" style="display:none">".hdl"</span><span data-if="com" style="display:none">".hdl"</span><span data-if="dotnet" style="display:none">".hdl"</span><span data-if="python" style="display:none">".hdl"</span></i>.
</p>
<p>For an explanation of the concept of deep-learning-based classification
see the introduction of chapter <a href="toc_deeplearning_classification.html">Deep Learning / Classification</a>.
The workflow involving this legacy operator is described in the chapter
<a href="toc_legacy_legdlclassification.html">Legacy / DL Classification</a>.
</p>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  <li>未经并行化处理。</li>
</ul>
<p>This operator returns a handle. Note that the state of an instance of this handle type may be changed by specific operators even though the handle is used as an input parameter by those operators.</p>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="FileName" class="parname"><b><code><span data-if="hdevelop" style="display:inline">FileName</span><span data-if="c" style="display:none">FileName</span><span data-if="cpp" style="display:none">FileName</span><span data-if="com" style="display:none">FileName</span><span data-if="dotnet" style="display:none">fileName</span><span data-if="python" style="display:none">file_name</span></code></b> (input_control)  </span><span>filename.read <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">File name.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_compact.hdl'</span>
    <span data-if="c" style="display:none">"pretrained_dl_classifier_compact.hdl"</span>
    <span data-if="cpp" style="display:none">"pretrained_dl_classifier_compact.hdl"</span>
    <span data-if="com" style="display:none">"pretrained_dl_classifier_compact.hdl"</span>
    <span data-if="dotnet" style="display:none">"pretrained_dl_classifier_compact.hdl"</span>
    <span data-if="python" style="display:none">"pretrained_dl_classifier_compact.hdl"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_compact.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_compact.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_compact.hdl"</span>, <span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_enhanced.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_enhanced.hdl"</span>, <span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_resnet18.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_resnet18.hdl"</span>, <span data-if="hdevelop" style="display:inline">'pretrained_dl_classifier_resnet50.hdl'</span><span data-if="c" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="cpp" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="com" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="dotnet" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span><span data-if="python" style="display:none">"pretrained_dl_classifier_resnet50.hdl"</span></p>
<p class="pardesc"><span class="parcat">File extension:
          </span>.<code>hdl</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="DLClassifierHandle" class="parname"><b><code><span data-if="hdevelop" style="display:inline">DLClassifierHandle</span><span data-if="c" style="display:none">DLClassifierHandle</span><span data-if="cpp" style="display:none">DLClassifierHandle</span><span data-if="com" style="display:none">DLClassifierHandle</span><span data-if="dotnet" style="display:none">DLClassifierHandle</span><span data-if="python" style="display:none">dlclassifier_handle</span></code></b> (output_control)  </span><span>dl_classifier <code>→</code> <span data-if="dotnet" style="display:none"><a href="HDlClassifier.html">HDlClassifier</a>, </span><span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">HHandle</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (handle)</span><span data-if="dotnet" style="display:none"> (<i>IntPtr</i>)</span><span data-if="cpp" style="display:none"> (<i>HHandle</i>)</span><span data-if="c" style="display:none"> (<i>handle</i>)</span></span>
</div>
<p class="pardesc">Handle of the deep learning classifier.</p>
</div>
<h2 id="sec_result">结果</h2>
<p>If the indicated file is available and the format is correct,
该算子 <code><span data-if="hdevelop" style="display:inline">read_dl_classifier</span><span data-if="c" style="display:none">read_dl_classifier</span><span data-if="cpp" style="display:none">ReadDlClassifier</span><span data-if="com" style="display:none">ReadDlClassifier</span><span data-if="dotnet" style="display:none">ReadDlClassifier</span><span data-if="python" style="display:none">read_dl_classifier</span></code> 返回值 <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
    .
Otherwise an exception will be raised.</p>
<h2 id="sec_successors">可能的后置算子</h2>
<p>
<code><a href="set_dl_classifier_param.html"><span data-if="hdevelop" style="display:inline">set_dl_classifier_param</span><span data-if="c" style="display:none">set_dl_classifier_param</span><span data-if="cpp" style="display:none">SetDlClassifierParam</span><span data-if="com" style="display:none">SetDlClassifierParam</span><span data-if="dotnet" style="display:none">SetDlClassifierParam</span><span data-if="python" style="display:none">set_dl_classifier_param</span></a></code>, 
<code><a href="get_dl_classifier_param.html"><span data-if="hdevelop" style="display:inline">get_dl_classifier_param</span><span data-if="c" style="display:none">get_dl_classifier_param</span><span data-if="cpp" style="display:none">GetDlClassifierParam</span><span data-if="com" style="display:none">GetDlClassifierParam</span><span data-if="dotnet" style="display:none">GetDlClassifierParam</span><span data-if="python" style="display:none">get_dl_classifier_param</span></a></code>, 
<code><a href="apply_dl_classifier.html"><span data-if="hdevelop" style="display:inline">apply_dl_classifier</span><span data-if="c" style="display:none">apply_dl_classifier</span><span data-if="cpp" style="display:none">ApplyDlClassifier</span><span data-if="com" style="display:none">ApplyDlClassifier</span><span data-if="dotnet" style="display:none">ApplyDlClassifier</span><span data-if="python" style="display:none">apply_dl_classifier</span></a></code>, 
<code><a href="train_dl_classifier_batch.html"><span data-if="hdevelop" style="display:inline">train_dl_classifier_batch</span><span data-if="c" style="display:none">train_dl_classifier_batch</span><span data-if="cpp" style="display:none">TrainDlClassifierBatch</span><span data-if="com" style="display:none">TrainDlClassifierBatch</span><span data-if="dotnet" style="display:none">TrainDlClassifierBatch</span><span data-if="python" style="display:none">train_dl_classifier_batch</span></a></code>
</p>
<h2 id="sec_alternatives">可替代算子</h2>
<p>
<code><a href="read_dl_model.html"><span data-if="hdevelop" style="display:inline">read_dl_model</span><span data-if="c" style="display:none">read_dl_model</span><span data-if="cpp" style="display:none">ReadDlModel</span><span data-if="com" style="display:none">ReadDlModel</span><span data-if="dotnet" style="display:none">ReadDlModel</span><span data-if="python" style="display:none">read_dl_model</span></a></code>, 
<code><a href="read_class_mlp.html"><span data-if="hdevelop" style="display:inline">read_class_mlp</span><span data-if="c" style="display:none">read_class_mlp</span><span data-if="cpp" style="display:none">ReadClassMlp</span><span data-if="com" style="display:none">ReadClassMlp</span><span data-if="dotnet" style="display:none">ReadClassMlp</span><span data-if="python" style="display:none">read_class_mlp</span></a></code>, 
<code><a href="read_class_svm.html"><span data-if="hdevelop" style="display:inline">read_class_svm</span><span data-if="c" style="display:none">read_class_svm</span><span data-if="cpp" style="display:none">ReadClassSvm</span><span data-if="com" style="display:none">ReadClassSvm</span><span data-if="dotnet" style="display:none">ReadClassSvm</span><span data-if="python" style="display:none">read_class_svm</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
Deep Learning Inference</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
